package bll

import (
	"jgt-oper/src/model"
	"jgt-oper/src/schema"
)

// ParkEntranceBll 门牌和门禁对应关系
type ParkEntranceBll struct {
	ParkEntranceModel model.IParkEntrance `inject:"IParkEntrance"`
}

// Create 创建对应关系
func (a *ParkEntranceBll) Create(item *schema.ParkEntrance) error {
	return a.ParkEntranceModel.Create(item)
}

// Get 查询对应关系
func (a *ParkEntranceBll) Get(nodeID string) (*schema.ParkEntrance, error) {
	return a.ParkEntranceModel.Get(nodeID)
}

// Delete 标记删除对应关系
func (a *ParkEntranceBll) Delete(nodeID string) error {
	return a.ParkEntranceModel.Delete(nodeID)
}

// AddEntrance 添加门禁
func (a *ParkEntranceBll) AddEntrance(nodeID string, entrances []string) error {
	return a.ParkEntranceModel.AddEntrance(nodeID, entrances)
}

// DeleteEntrance 删除门禁
func (a *ParkEntranceBll) DeleteEntrance(nodeID string, entrances []string) error {
	return a.ParkEntranceModel.DeleteEntrance(nodeID, entrances)
}

// GetByArray 批量查询对应关系
func (a *ParkEntranceBll) GetByArray(nodeArray []string) ([]*schema.ParkEntrance, error) {
	return a.ParkEntranceModel.GetByArray(nodeArray)
}

// GetByEntranceID 查询包含门禁id的所有的对应关系
func (a *ParkEntranceBll) GetByEntranceID(entranceID string) ([]*schema.ParkEntrance, error) {
	return a.ParkEntranceModel.GetByEntranceID(entranceID)
}
